package de.stefanocke.roo.wicket;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * This annotation triggers the creation of a projection of 
 * the properties of a model class. For each included field, a constant
 * is created, which is annotated with @RooProperty. 
 * 
 * @author stoc
 *
 */
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.SOURCE)
public @interface RooProperties {
	Class<?> modelClass();
	boolean autowire() default true;
	RoundTripMode roundTrip() default RoundTripMode.FULL;
}
